package com.yuantu.judiciary.service;

import com.yuantu.judiciary.model.form.InviteCodeForm;
import com.yuantu.judiciary.model.vo.InviteCodeDivideVO;
import com.yuantu.judiciary.model.vo.InviteRecordDivideVO;

import java.util.List;

/**
 * 邀请码
 *
 * @author syw
 * @since 2023-08-18
 **/
public interface IInviteCodeService {

    String getRandom();

    Boolean bindTrial(Long accountId, InviteCodeForm form);

    Boolean bindInvite(Long accountId, InviteCodeForm form);

    void bindInviteRecord(String code, Long organizationId, Long accountId);

    void addInviteCodeToAllAccountWithoutInviteCode();

    List<InviteCodeDivideVO> queryDivideInfos(String codeInfo, Long accountId);

    List<InviteRecordDivideVO> queryDivideInfoDetail(String codeInfo);
}
